package com.example.mykotlinapp.test

/**
 *在杨辉三角中，每个数是它左上方和右上方的数的和。

示例:

输入: 5
输出:
[
[1],
[1,1],
[1,2,1],
[1,3,3,1],
[1,4,6,4,1]
]
 *
 * @author zhudeshuai
 * @since 2019/8/12
 */

fun generate(numRows: Int): List<List<Int>> {
    var result = arrayListOf<List<Int>>()
    for (i in 1..numRows) {
        when (i) {
            1 -> result.add(arrayListOf(1))
            2 -> result.add(arrayListOf(1, 1))
            else -> {
                var itemList = arrayListOf<Int>()
                itemList.add(1)
                val preList = result[i - 2]
                for (j in 1 until (i - 1)) {
                    itemList.add(preList[j - 1] + preList[j])
                }
                itemList.add(1)
                result.add(itemList)
            }
        }

    }
    return result
}

fun main() {

}